// utils.js
const fs = require('fs')

/**
 * 检查目录是否存在
 * @param {string} directoryPath - 需要检查的目录路径
 * @returns {boolean} - 如果目录存在返回 true，否则返回 false
 */
function checkDirectoryExistsSync(directoryPath) {
    return fs.existsSync(directoryPath) && fs.statSync(directoryPath).isDirectory()
}


/**
 * 保存用户上传的文件到指定目录
 * @param {string} filepath - 用户上传的文件路径
 * @param {string} targetpath - 保存文件的目录路径   
 */
function moveFileToTargetSync(file, targetpath) {
    try {
        fs.copyFileSync(file, targetpath)
        return true
    } catch (err) {
        console.error(err)
        return false
    }
}

/**
 * 解析命令行参数
 * @param {Array} 命令行参数列表
 * @returns {Object} 命令行参数对象
 */ 

function parseArgs(args) {
    const options = {}
    for (let i = 2; i < args.length; i++) {
        const arg = args[i]
        if (arg.startsWith('--')) {
            const [key, value] = arg.slice(2).split('=')
            options[key] = value
        }
    }
    return options
}




// 导出函数
module.exports = {
    checkDirectoryExistsSync,
    moveFileToTargetSync,
    parseArgs
}